package com.xixi.mapper;

import com.xixi.pojo.vo.statistics.order.OrderStatsVO;
import com.xixi.pojo.vo.statistics.order.OrderStatusVO;
import com.xixi.pojo.vo.statistics.order.OrderTrendVO;
import com.xixi.pojo.vo.statistics.personal.PersonalTradingAnalysisVO;
import com.xixi.pojo.vo.statistics.personal.PersonalTradingTrendVO;
import com.xixi.pojo.vo.statistics.product.ProductCategoryVO;
import com.xixi.pojo.vo.statistics.product.ProductStatsVO;
import com.xixi.pojo.vo.statistics.product.ProductStatusVO;
import com.xixi.pojo.vo.statistics.user.UserGenderVO;
import com.xixi.pojo.vo.statistics.user.UserRegisterVO;
import com.xixi.pojo.vo.statistics.user.UserStatsVO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface StatisticsMapper {
    OrderStatsVO getOrderStats();

    List<OrderTrendVO> getOrderTrend();

    List<OrderStatusVO> getOrderStatus();

    List<ProductCategoryVO> getProductCategory();

    ProductStatsVO getProductStats();

    List<ProductStatusVO> getProductStatus();

    UserStatsVO getUserStats();

    List<UserGenderVO> getUserGender();

    List<UserRegisterVO> getUserRegister();

    ProductStatsVO getPersonalProductStats(Integer userId);

    List<ProductCategoryVO> getPersonalProductCategory(Integer userId);

    List<ProductStatusVO> getPersonalProductStatus(Integer userId);

    OrderStatsVO getPersonalOrderStats(Integer userId);

    List<OrderStatusVO> getPersonalOrderStatus(Integer userId);

    List<OrderTrendVO> getPersonalOrderTrend(Integer userId);

    List<PersonalTradingTrendVO> getPersonalTradingTrend(Integer userId);

    PersonalTradingAnalysisVO getPersonalTradingAnalysis(Integer userId);
}
